Conventional programming environments do not fully support cross-network execution and/or flexible sharing of data between large numbers of computing processes. For example, conventional user-facing computing platforms provide facilities for transmitting event data between processes. But these conventional mechanisms all suffer from shortcomings that make it difficult to build multi-process and multi-machine applications. For example, conventional event frameworks are strongly typed, which makes them inflexible, and forms a mismatch with the facilities of increasingly popular dynamic applications. The conventional frameworks are also configured only to support point-to-point data transfers, which makes coordinating the activity of more than a few distinct processes difficult or impossible. The conventional frameworks are also strongly dependent on particular local, in-memory data structures, which renders them unsuited for on-disk storage or transmission across a network.